www.gusucode.com > NIT工具箱二重积分源码程序 > matlab代做 修改 程序NIT工具箱二重积分/nit_new/ncrule.m
function [bp,wf]=ncrule(m) %usage: [bp,wf]=ncrule(m); % This function returns the Newton-Coates base points and weight factors % up to an 8 point Newton-Coates formula. % % m -- number of Newton-Coates points (integrates an mth order % polynomial exactly (or an (m+1)th order for even m)) % By Bryce Gardner, Purdue University, Spring 1993. if m==1, bp=[-1;1]; wf=[1;1]; elseif m==2, bp=[-1;0;1]; wf=[1;4;1]/3; elseif m==3, bp=[-1;-1/3;1/3;1]; wf=[1;3;3;1]/4; elseif m==4, bp=[-1;-1/2;0;1/2;1]; wf=[7;32;12;32;7]/45; elseif m==5, bp=[-1;-3/5;-1/5;1/5;3/5;1]; wf=[19;75;50;50;75;19]/144; elseif m==6, bp=[-1;-2/3;-1/3;0;1/3;2/3;1]; wf=[41;216;27;272;27;216;41]/420; elseif m==7, bp=[-1;-5/7;-3/7;-1/7;1/7;3/7;5/7;1]; wf=[751;3577;1323;2989;2989;1323;3577;751]/8640; else, if m~=8, disp('Dont know formula higher than n=8. Returning as if n=8.'); end bp=[-1;-3/4;-1/2;-1/4;0;1/4;1/2;3/4;1]; wf=[989;5888;-928;10496;-4540;10496;-928;5888;989]/14175; end